<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
        "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:f="http://java.sun.com/jsf/core"
      xmlns:h="http://java.sun.com/jsf/html"
      xmlns:ui="http://java.sun.com/jsf/facelets"
      xmlns:p="http://primefaces.org/ui">
<ui:composition template="../templates/layout.xhtml">
    <ui:define name="title">Generar Reporte Cuenta Almacén</ui:define>
    <ui:define name="content">
        <p:spacer height="5px"/>
        <p:panel>
            <h:outputText value="Generar Reporte Cuenta Almacén" styleClass="text_header_page"/>
        </p:panel>
        <p:spacer height="5px"/>
        <h:panelGroup>
            <ui:decorate template="/pages/ui/uiCheckPoint.xhtml">
                <ui:param name="jsfBean" value="#{reporteCuentaAlmacenJsfBean}"/>
                <ui:param name="verEditarCheckPoint" value="false"/>
                <ui:param name="verFechaCorte" value="true"/>
                <ui:param name="verDocumentos" value="true"/>
                <ui:param name="verSincronizar" value="true"/>
            </ui:decorate>
            <h:form id="frmReporte">
                <p:outputPanel id="pnlUsuario" rendered="#{not reporteCuentaAlmacenJsfBean.administrador}">
                    <p:panel header="Criterios de Búsqueda">
                        <p:panelGrid>
                            <p:row>
                                <p:column>

                                    <p:outputLabel for="cmbGrupoEmpresarial" value="Grupo Empresarial"/>
                                </p:column>
                                <p:column>
                                    <p:selectOneMenu id="cmbGrupoEmpresarial" converter="#{managerGrupoDTOConverter}"
                                                     required="true" requiredMessage="*"
                                                     value="#{reporteCuentaAlmacenJsfBean.reporteContext.grupoEmpresarial}"
                                                     style="width:180px;">
                                        <f:selectItem itemLabel="Seleccione" itemValue="" noSelectionOption="true"/>
                                        <f:selectItems value="#{reporteCuentaAlmacenJsfBean.cmbGrupoEmpresarial}"
                                                       var="grupoSelect"
                                                       itemLabel="#{grupoSelect.nombre}"
                                                       itemValue="#{grupoSelect}"/>
                                        <p:ajax event="change" update=":frmReporte:cmbSociedades :messages"
                                                process="@this"
                                                listener="#{reporteCuentaAlmacenJsfBean.onSelectGrupoEmpresarial}"/>
                                    </p:selectOneMenu>
                                </p:column>
                                <p:column>
                                    <p:message for="cmbGrupoEmpresarial" display="text"/>
                                </p:column>
                                <p:column>
                                    <p:outputLabel for="cmbSociedades" value="Sociedad"/>
                                </p:column>
                                <p:column>
                                    <p:selectCheckboxMenu id="cmbSociedades" label="Sociedades" filter="true"
                                                          converter="#{managerSociedadDTOConverter}" required="true"
                                                          requiredMessage="*"
                                                          value="#{reporteCuentaAlmacenJsfBean.reporteContext.sociedadList}"
                                                          filterText="Filter" filterMatchMode="startsWith"
                                                          panelStyle="width:220px"
                                            >
                                        <f:selectItems value="#{reporteCuentaAlmacenJsfBean.cmbSociedad}"
                                                       var="sociedadItem"
                                                       itemLabel="#{sociedadItem.nombre}"
                                                       itemValue="#{sociedadItem}"/>

                                    </p:selectCheckboxMenu>
                                </p:column>
                                <p:column>
                                    <p:message for="cmbSociedades" display="text"/>
                                </p:column>

                                <p:column>
                                    <p:outputLabel for="cmbAgrupacion" value="Seleccione las agrupaciones"
                                            />
                                </p:column>
                                <p:column>
                                    <p:selectCheckboxMenu id="cmbAgrupacion" label="Agrupaciones" filter="true"
                                                          converter="#{managerAgrupacionDTOConverter}"
                                                          value="#{reporteCuentaAlmacenJsfBean.reporteContext.agrupacionList}"
                                                          filterText="Filter" filterMatchMode="startsWith"
                                                          panelStyle="width:220px"
                                            >
                                        <f:selectItems value="#{reporteCuentaAlmacenJsfBean.cmbAgrupacion}"
                                                       var="agrupacionItem"
                                                       itemLabel="#{agrupacionItem.nombre}"
                                                       itemValue="#{agrupacionItem}"/>

                                    </p:selectCheckboxMenu>
                                </p:column>
                                <p:column>
                                    <p:message for="cmbAgrupacion" display="text"/>
                                </p:column>
                                <p:column>
                                    <p:outputLabel for="cmbReporte" value="Reportes"/>
                                </p:column>
                                <p:column>
                                    <p:selectCheckboxMenu id="cmbReporte" label="Reportes" filter="true" required="true"
                                                          requiredMessage="*"
                                                          value="#{reporteCuentaAlmacenJsfBean.reporteContext.reporteAlmacenList}"
                                                          converter="#{managerTipoReporteAlmacenConverter}"
                                                          filterText="Filter" filterMatchMode="startsWith"
                                                          panelStyle="width:320px"
                                            >
                                        <f:selectItems
                                                value="#{reporteCuentaAlmacenJsfBean.allTipoReporteCuentaAlmacen}"
                                                var="reporteItem"
                                                itemLabel="#{reporteItem.nombre}" itemValue="#{reporteItem}"/>

                                    </p:selectCheckboxMenu>
                                </p:column>
                                <p:column>
                                    <p:message for="cmbReporte" display="text"/>
                                </p:column>
                            </p:row>
                            <p:row>
                                <p:column>
                                    <p:outputLabel for="checkpointList" value="CheckPoint"/>
                                </p:column>
                                <p:column colspan="4">
                                    <p:selectOneMenu panelStyle="width: 350px" style="width: 220px"
                                                     var="checkPointItem" id="checkpointList"
                                                     converter="#{checkPointDTOConverter}" required="true"
                                                     requiredMessage="*"
                                                     value="#{reporteCuentaAlmacenJsfBean.reporteContext.checkPoint}">
                                        <f:selectItem itemLabel="Seleccione" itemValue=""/>
                                        <f:selectItems value="#{reporteCuentaAlmacenJsfBean.cmbCheckPoint}"
                                                       var="checkPoint" itemLabel="#{checkPoint.nombreArchivo}"
                                                       itemValue="#{checkPoint}"
                                                />
                                        <p:column>
                                            #{checkPointItem.nombreArchivo}
                                        </p:column>
                                        <p:column>
                                            <h:outputText value="#{checkPointItem.fechaCreacion}">
                                                <f:convertDateTime pattern="#{messages.label_app_timeFormatLong}"
                                                                   timeZone="America/Lima"
                                                                   type="both"/>
                                            </h:outputText>
                                        </p:column>
                                        <p:column>
                                            #{checkPointItem.comentario}
                                        </p:column>

                                    </p:selectOneMenu>
                                </p:column>
                                <p:column>
                                    <p:message for="checkpointList" display="text"/>
                                </p:column>
                                <p:column>
                                    <p:outputLabel for="cmbTipoImporte" value="Importe"/>
                                </p:column>
                                <p:column colspan="1">
                                    <p:selectOneMenu
                                            id="cmbTipoImporte" required="true" requiredMessage="*"
                                            value="#{reporteCuentaAlmacenJsfBean.reporteContext.tipoMonto}">
                                        <f:selectItem itemLabel="Seleccione" itemValue=""/>
                                        <f:selectItem itemLabel="Importe Moneda Local" itemValue="0"/>
                                        <f:selectItem itemLabel="Importe Valorado" itemValue="1"/>
                                    </p:selectOneMenu>
                                </p:column>
                                <p:column>
                                    <p:message for="cmbTipoImporte" display="text"/>
                                </p:column>

                            </p:row>

                            <p:row>

                                <p:column colspan="6" style="vertical-align: top; ">

                                    <p:commandButton value="#{messages.label_process}" icon="ui-icon-refresh"
                                                     actionListener="#{reporteCuentaAlmacenJsfBean.procesar}"
                                                     ajax="true" update=":frmReporte :messages"
                                            />

                                </p:column>

                            </p:row>
                        </p:panelGrid>
                    </p:panel>
                </p:outputPanel>
                <p:outputPanel id="pnlAdmin" rendered="#{reporteCuentaAlmacenJsfBean.administrador}">
                    <p:panel header="Criterios de Búsqueda">
                        <p:panelGrid>
                            <p:row>
                                <p:column>
                                    <p:outputLabel for="checkpointListAdmin" value="CheckPoint"/>
                                </p:column>
                                <p:column colspan="1">
                                    <p:selectOneMenu panelStyle="width: 350px" style="width: 220px"
                                                     var="checkPointItem" id="checkpointListAdmin"
                                                     converter="#{checkPointDTOConverter}"
                                                     value="#{reporteCuentaAlmacenJsfBean.reporteContext.checkPoint}">
                                        <f:selectItem itemLabel="Seleccione" itemValue=""/>
                                        <f:selectItems value="#{reporteCuentaAlmacenJsfBean.cmbCheckPoint}"
                                                       var="checkPoint" itemLabel="#{checkPoint.nombreArchivo}"
                                                       itemValue="#{checkPoint}"
                                                />
                                        <p:column>
                                            #{checkPointItem.nombreArchivo}
                                        </p:column>
                                        <p:column>
                                            <h:outputText value="#{checkPointItem.fechaCreacion}">
                                                <f:convertDateTime pattern="#{messages.label_app_timeFormatLong}"
                                                                   timeZone="America/Lima"
                                                                   type="both"/>
                                            </h:outputText>
                                        </p:column>
                                        <p:column>
                                            #{checkPointItem.comentario}
                                        </p:column>

                                    </p:selectOneMenu>
                                </p:column>
                                <p:column>
                                    <p:message for="checkpointListAdmin" display="text"/>
                                </p:column>
                                <p:column>
                                    <p:outputLabel for="cmbAgrupacionAdmin" value="Seleccione las agrupaciones"
                                            />
                                </p:column>
                                <p:column>
                                    <p:selectCheckboxMenu id="cmbAgrupacionAdmin" label="Agrupaciones" filter="true"
                                                          converter="#{managerAgrupacionDTOConverter}"

                                                          value="#{reporteCuentaAlmacenJsfBean.reporteContext.agrupacionList}"
                                                          filterText="Filter" filterMatchMode="startsWith"
                                                          panelStyle="width:220px"
                                            >
                                        <f:selectItems value="#{reporteCuentaAlmacenJsfBean.cmbAgrupacion}"
                                                       var="agrupacionItem"
                                                       itemLabel="#{agrupacionItem.nombre}"
                                                       itemValue="#{agrupacionItem}"/>

                                    </p:selectCheckboxMenu>
                                </p:column>
                                <p:column>
                                    <p:message for="cmbAgrupacionAdmin" display="text"/>
                                </p:column>

                                <p:column>
                                    <p:outputLabel for="cmbReporteAdmin" value="Reportes"/>
                                </p:column>
                                <p:column>
                                    <p:selectCheckboxMenu id="cmbReporteAdmin" label="Reportes" filter="true"
                                                          value="#{reporteCuentaAlmacenJsfBean.reporteContext.reporteAlmacenList}"
                                                          converter="#{managerTipoReporteAlmacenConverter}"
                                                          filterText="Filter" filterMatchMode="startsWith"
                                                          style="width: 150px"
                                                          panelStyle="width:320px"
                                            >
                                        <f:selectItems
                                                value="#{reporteCuentaAlmacenJsfBean.allTipoReporteCuentaAlmacen}"
                                                var="reporteItem"
                                                itemLabel="#{reporteItem.nombre}" itemValue="#{reporteItem}"/>

                                    </p:selectCheckboxMenu>
                                </p:column>
                                <p:column>
                                    <p:message for="cmbReporteAdmin" display="text"/>
                                </p:column>
                            </p:row>
                            <p:row>
                                <p:column colspan="2">

                                </p:column>
                                <p:column >

                                </p:column>
                                <p:column>
                                    <p:outputLabel for="cmbTipoImporteAdmin" value="Importe"/>
                                </p:column>
                                <p:column colspan="1">
                                    <p:selectOneMenu
                                            id="cmbTipoImporteAdmin" required="true" requiredMessage="*"
                                            value="#{reporteCuentaAlmacenJsfBean.reporteContext.tipoMonto}">
                                        <f:selectItem itemLabel="Seleccione" itemValue=""/>
                                        <f:selectItem itemLabel="Importe Moneda Local" itemValue="0"/>
                                        <f:selectItem itemLabel="Importe Valorado" itemValue="1"/>
                                    </p:selectOneMenu>
                                </p:column>
                                <p:column>
                                    <p:message for="cmbTipoImporteAdmin" display="text"/>
                                </p:column>
                            </p:row>
                            <p:row>
                                <p:column colspan="2">
                                    <p:treeTable style="font-size: 10px"
                                                 value="#{reporteCuentaAlmacenJsfBean.root}" var="grupoEmpresarial"
                                                 id="multiSelect"
                                                 selection="#{reporteCuentaAlmacenJsfBean.selectedNodes}"
                                                 selectionMode="checkbox">

                                        <f:facet name="header">
                                            Grupo Empresarial
                                        </f:facet>

                                        <p:column style="width:150px">
                                            <f:facet name="header">
                                                Nombre
                                            </f:facet>
                                            <h:outputText value="#{grupoEmpresarial.nombre}"/>
                                        </p:column>
                                    </p:treeTable>
                                </p:column>
                                <p:column></p:column>
                                <p:column colspan="6" style="vertical-align: top; ">

                                    <p:commandButton value="#{messages.label_process}" icon="ui-icon-refresh"
                                                     actionListener="#{reporteCuentaAlmacenJsfBean.procesar}"
                                                     ajax="true" update=":frmReporte :messages"
                                            />

                                </p:column>
                            </p:row>
                        </p:panelGrid>
                    </p:panel>
                </p:outputPanel>
            </h:form>
        </h:panelGroup>

    </ui:define>

    <ui:define name="modal">
        <ui:decorate template="/pages/ui/uiModal.xhtml">
            <ui:param name="jsfBean" value="#{reporteCuentaAlmacenJsfBean}"/>
            <ui:param name="verFechaCorte" value="false"/>
        </ui:decorate>
    </ui:define>

</ui:composition>
</html>